package com.micangcaihang.micang.view.mvp.contract;

import com.micangcaihang.common.base.mvp.BaseModel;
import com.micangcaihang.common.base.mvp.BasePresenter;
import com.micangcaihang.common.base.mvp.IBaseView;
import com.micangcaihang.common.http.ApiResult;
import com.micangcaihang.micang.entity.PickerEntity;
import com.micangcaihang.micang.mvp.task.contract.FTaskPracticalUserInfoContract;

import java.util.List;

import io.reactivex.Observable;

/**
 * <pre>
 *     author : Fandy
 *     e-mail : fandayongfly@gmail.com
 *     time   : 2017/8/8
 *     update : 2017/8/8
 *     desc   : 婚宴布局契约
 *     version: 1.0
 * </pre>
 */
public interface MatesContract {
    interface View  {
        /**
         * 针对Dilaog加载dialog加载弹窗
         *
         * @param title 提示文字
         */
        void showDialogLoading(String title);

        /**
         * 针对Dilaog隐藏加载dialiog
         */
        void hideDialogLoading();
        /**
         * Toast提示接口
         *
         * @param msg
         */
        void showTip(String msg);
        /**
         * 返回下拉框信息
         *
         * @param list
         */
        void returnPickerViewData(List<PickerEntity> list, String type);
    }

    public interface Model {
        /**
         * 获取下拉框数据
         *
         * @return
         */
        Observable<ApiResult<List<PickerEntity>>> getPickerViewData(String type);
    }

    public abstract class Presenter<View> {
        /**
         * 加载下拉框数据
         */
        public abstract void loadPickerViewData(String type, String title);
    }
}
